#ifndef LIB_DATE_TIME_TOOL_H
#define LIB_DATE_TIME_TOOL_H
#include "libGeoutils/property/properties.h"

namespace geo {
namespace tool {

class GEOUTILS_EXPORT DateTime : public geo::prop::Properties
{
public:
	using sptr = std::shared_ptr<DateTime>;
	using csptr = std::shared_ptr<const DateTime>;

	DateTime(int year = 0, int month = 0, int day = 0, int hour = 0, int minute = 0, int seconds = 0);
	virtual ~DateTime();

	void setYear(int year);
	int getYear() const;

	void setMonth(int month);
	int getMonth() const;

	void setDay(int day);
	int getDay() const;

	void setHour(int hour);
	int getHour() const;

	void setMinute(int minute);
	int getMinute() const;

	void setSeconds(int seconds);
	int getSeconds() const;

	std::string toString() const;

	static DateTime::csptr now();
	static std::string now_str();

protected:

private:

};

} // namespace tool
} // namespace geo

#endif // !LIB_DATE_TIME_TOOL_H
